package com.fanqiechaodan.interpreter;

/**
 * @author fanqiechaodan
 * @Classname Demo
 * @Description 解释器模式
 */
public class Demo {

    public static void main(String[] args) {
        // 创建一个复杂表达式,用于计算5+3-2+1的结果
        Expression expression = new AddExpression(
                new SubtractExpression(
                        new AddExpression(
                                new NumberExpression(5), new NumberExpression(3)),
                        new NumberExpression(2)),
                new NumberExpression(1));

        // 使用解释器模式来解释表达式,并输出计算结果
        System.out.println(expression.interpreter());
    }
}
